home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-10-17 | 3.7 KB | 158 lines | [TEXT/CWIE] |
- // Add.cp -- Modal dialog
-
- #include <Types.h>
- #include <Quickdraw.h>
- #include <Controls.h>
- #include <Dialogs.h>
- #include <Events.h>
- #include <Lists.h>
- #include <Menus.h>
- #include <TextEdit.h>
- #include <Appearance.h>
-
- #include "ResourceDefs.h"
- #include "Miscellany.h"
- #include "ControlUtils.h"
-
- #include "Add.h"
-
- #define kOKButton 1
- #define kCancelButton 2
- #define kLogoImage 3
- #define kAddReminderForLabel 4
- #define kDateLabel 5
- #define kDate2Field 6
- #define kTimeLabel 7
- #define kTime2Field 8
- #define kMessageLabel 9
- #define kMessage2Field 10
- #define kWhenRemindingLabel 11
- #define kDisplayIconCheck 12
- #define kDisplayAlertCheck 13
- #define kPlaySoundCheck 14
- #define kSoundPopupPopup 15
-
-
- //----------
- // static
- Boolean CAdd::GetAdd (
- DReminder* ioData)
- {
- Boolean result = false;
- CAdd* dialog = new CAdd;
-
- result = dialog->RunModal (DLOG_Add, ioData);
-
- delete dialog;
-
- return result;
- }
-
- //----------
- CAdd::CAdd ()
- {
- mData = nil;
- }
-
- //----------
- CAdd::~CAdd ()
- {
- }
-
- //----------
- void CAdd::FinishMake ()
- {
- mOKHandle = GetControlItem (kOKButton);
- SetDefaultState (mOKHandle, true);
- ::SetDialogDefaultItem (mDialog, kOKButton);
- mCancelHandle = GetControlItem (kCancelButton);
- ::SetDialogCancelItem (mDialog, kCancelButton);
- mDate2Handle = GetControlItem (kDate2Field);
- mTime2Handle = GetControlItem (kTime2Field);
- mMessage2Handle = GetControlItem (kMessage2Field);
- mDisplayIconHandle = GetControlItem (kDisplayIconCheck);
- mDisplayAlertHandle = GetControlItem (kDisplayAlertCheck);
- mPlaySoundHandle = GetControlItem (kPlaySoundCheck);
- mSoundPopupHandle = GetControlItem (kSoundPopupPopup);
- }
-
- //----------
- void CAdd::ConnectToData (
- AMSignaler* inData)
- {
- AMDialog::ConnectToData (inData);
- mData = (DReminder*) inData;
-
- SetClockDateTime (mDate2Handle, mData->GetYearMonthDay ());
- SetClockDateTime (mTime2Handle, mData->GetHourMinute ());
- SetControlText (mMessage2Handle, mData->GetMessage ());
- SetControlValue (mDisplayIconHandle, mData->GetShowIcon ());
- SetControlValue (mDisplayAlertHandle, mData->GetShowAlert ());
- SetControlValue (mPlaySoundHandle, mData->GetPlaySound ());
- SetControlValue (mSoundPopupHandle, mData->GetSoundIndex ());
- }
-
- //----------
- void CAdd::DataChanged (
- long inDataID)
- {
- if (inDataID == idYearMonthDay) {
- SetClockDateTime (mDate2Handle, mData->GetYearMonthDay ());
- }
- if (inDataID == idHourMinute) {
- SetClockDateTime (mTime2Handle, mData->GetHourMinute ());
- }
- if (inDataID == idMessage) {
- SetControlText (mMessage2Handle, mData->GetMessage ());
- }
- if (inDataID == idShowIcon) {
- SetControlValue (mDisplayIconHandle, mData->GetShowIcon ());
- }
- if (inDataID == idShowAlert) {
- SetControlValue (mDisplayAlertHandle, mData->GetShowAlert ());
- }
- if (inDataID == idPlaySound) {
- SetControlValue (mPlaySoundHandle, mData->GetPlaySound ());
- }
- if (inDataID == idSoundIndex) {
- SetControlValue (mSoundPopupHandle, mData->GetSoundIndex ());
- }
- }
-
-
- //----------
- void CAdd::DoItem (
- SInt16 inItemHit)
- {
- switch (inItemHit) {
- case kOKButton:
- SetResult (true);
- break;
- case kCancelButton:
- SetResult (false);
- break;
- case kDate2Field:
- mData->SetYearMonthDay (GetClockDateTime (mDate2Handle));
- break;
- case kTime2Field:
- mData->SetHourMinute (GetClockDateTime (mTime2Handle));
- break;
- case kMessage2Field:
- mData->SetMessage (GetEditTextChars (mMessage2Handle));
- break;
- case kDisplayIconCheck:
- mData->SetShowIcon (ToggleCheckbox (mDisplayIconHandle));
- break;
- case kDisplayAlertCheck:
- mData->SetShowAlert (ToggleCheckbox (mDisplayAlertHandle));
- break;
- case kPlaySoundCheck:
- mData->SetPlaySound (ToggleCheckbox (mPlaySoundHandle));
- break;
- case kSoundPopupPopup:
- mData->SetSoundIndex (GetControlValue (mSoundPopupHandle));
- break;
-
- } // switch
- }
-